Skip to content

[Dev only] BBQ Farmer: save local screenshots for failed quest attempts - #3

Open
dayfine wants to merge 11 commits into
bbq/diagnostics-and-baselinefrom
bbq/failure-screenshots
Open

dayfine wants to merge 11 commits into
bbq/diagnostics-and-baselinefrom
bbq/failure-screenshots

Conversation

@dayfine

@dayfine dayfine commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Base: bbq/diagnostics-and-baseline (#2), including #27's consolidated logging. This diff adds local failure-screenshot evidence.

When battle entry times out or a quest remains on the board after verification, save the current frame locally under DEBUG_PATH()/BBQ/ and log its path. No telemetry is sent. The snapshot adapter reuses #2's canonical timeout/result events. The existing unsplit dispatcher retains all retry/counting decisions and controller inputs. Both screenshot tests remain beside the snapshot module and register through the BBQ suite.

These images are developer/bug-report evidence, currently captured automatically. Before normal-user release, choose lab-only handling or explicit opt-in defaulting off. This distribution decision and the separate #19 capture overlap remain follow-ups; no new setting is implemented here.

Current head 2f6af0a14 merges #2's user-directed removal of the execution split and follows its scoped legacy-size waiver. The only two code-health findings are the same existing file/function sizes (1467 versus 1463 lines and 138 versus 135 lines); they are accepted as the consequence of retaining the existing dispatcher, not reported as green. Other code-health and whitespace checks pass. Fresh native CI is running; earlier native results at d29f79bd5 remain historical. No console run.

When a catch quest times out entering battle, or a quest is still on
the panel after an attempt, the logs say what failed but not what the
screen showed.

Add save_bbq_snapshot(), which saves the current frame to
DEBUG_PATH()/BBQ/ as <timestamp>-<quest>-<reason>.png and logs a
"BBQ event=snapshot" line with the outcome. Unlike dump_image(), it
stays on the local machine and sends nothing to telemetry. Call it at
the battle-entry timeout and at failed quest verification.

Add PokemonSV::BBQSnapshot tests that save into a folder that does not
exist yet and check the file, path and log line, and that check a
save that cannot be written returns no path and logs saved=0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
@dayfine
dayfine force-pushed the bbq/diagnostics-and-baseline branch from 7d24d5f to 7cf661b Compare October 28, 2026 08:08
@dayfine
dayfine force-pushed the bbq/failure-screenshots branch from 72099ba to cc69593 Compare October 28, 2026 08:08
@dayfine dayfine added farmer Farming programs game:sv Scarlet/Violet labels Nov 1, 2026
dayfine and others added 6 commits November 2, 2026 15:08
Keep screenshot evidence in its own adapter, without duplicating canonical status events. Move both screenshot regressions beside the snapshot module as explicit input/expectation cases and preserve retry/controller decisions.
@dayfine dayfine changed the title BBQ Farmer: save local screenshots for failed quest attempts [Dev only] BBQ Farmer: save local screenshots for failed quest attempts Nov 6, 2026
Propagate the user-directed legacy-size exception when merging the dispatcher restoration from #2. Only the existing file/function size findings remain: 1467 versus 1463 lines and 138 versus 135 lines. Do not relax global linter policy or introduce dispatch refactors for this diagnostics change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

farmer Farming programs game:sv Scarlet/Violet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant